Pseudocode Examples

1. Linear Search

BEGIN LinearSearch(arr, target)
  FOR i FROM 0 TO LENGTH(arr) - 1
    IF arr[i] = target THEN
      RETURN i
    END IF
  END FOR
  RETURN -1
END LinearSearch

2. Binary Search

BEGIN BinarySearch(arr, target)
  SET low = 0
  SET high = LENGTH(arr) - 1
  WHILE low <= high
    SET mid = (low + high) / 2
    IF arr[mid] = target THEN
      RETURN mid
    ELSE IF arr[mid] < target THEN
      SET low = mid + 1
    ELSE
      SET high = mid - 1
    END IF
  END WHILE
  RETURN -1
END BinarySearch

3. Bubble Sort

BEGIN BubbleSort(arr)
  SET n = LENGTH(arr)
  FOR i FROM 0 TO n - 1
    FOR j FROM 0 TO n - i - 2
      IF arr[j] > arr[j+1] THEN
        SWAP arr[j] AND arr[j+1]
      END IF
    END FOR
  END FOR
END BubbleSort

4. Selection Sort

BEGIN SelectionSort(arr)
  SET n = LENGTH(arr)
  FOR i FROM 0 TO n - 1
    SET minIndex = i
    FOR j FROM i+1 TO n - 1
      IF arr[j] < arr[minIndex] THEN
        SET minIndex = j
      END IF
    END FOR
    SWAP arr[i] AND arr[minIndex]
  END FOR
END SelectionSort

5. Insertion Sort

BEGIN InsertionSort(arr)
  SET n = LENGTH(arr)
  FOR i FROM 1 TO n - 1
    SET key = arr[i]
    SET j = i - 1
    WHILE j >= 0 AND arr[j] > key
      SET arr[j+1] = arr[j]
      SET j = j - 1
    END WHILE
    SET arr[j+1] = key
  END FOR
END InsertionSort

6. Merge Sort

BEGIN MergeSort(arr, left, right)
  IF left < right THEN
    SET mid = (left + right) / 2
    CALL MergeSort(arr, left, mid)
    CALL MergeSort(arr, mid+1, right)
    CALL Merge(arr, left, mid, right)
  END IF
END MergeSort

// Implementation of merge function
BEGIN Merge(arr, left, mid, right)
  // Merge logic here
END Merge

7. Quick Sort

BEGIN QuickSort(arr, low, high)
  IF low < high THEN
    SET pivotIndex = PARTITION(arr, low, high)
    CALL QuickSort(arr, low, pivotIndex - 1)
    CALL QuickSort(arr, pivotIndex + 1, high)
  END IF
END QuickSort

// Implementation of partition function
BEGIN PARTITION(arr, low, high)
  // Partition logic here
END PARTITION

8. Factorial (Recursive)

BEGIN Factorial(n)
  IF n = 0 OR n = 1 THEN
    RETURN 1
  ELSE
    RETURN n * Factorial(n - 1)
  END IF
END Factorial

9. Fibonacci Sequence

BEGIN Fibonacci(n)
  IF n = 0 THEN
    RETURN 0
  ELSE IF n = 1 THEN
    RETURN 1
  ELSE
    RETURN Fibonacci(n-1) + Fibonacci(n-2)
  END IF
END Fibonacci

10. Finding Maximum Element

BEGIN FindMax(arr)
  SET max = arr[0]
  FOR i FROM 1 TO LENGTH(arr) - 1
    IF arr[i] > max THEN
      SET max = arr[i]
    END IF
  END FOR
  RETURN max
END FindMax